<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml">
		<head>
			<!-- template designed by Marco Von Ballmoos -->
			<title>File Source for register_plugins.php</title>
			<link rel="stylesheet" href="../media/stylesheet.css" />
			<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
		</head>
		<body>
						<h1>Source for file register_plugins.php</h1>
<p>Documentation is available at <a href="../psa/_register_plugins.php.html">register_plugins.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">&nbsp;*&nbsp;Plugin&nbsp;registration&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;This&nbsp;script&nbsp;does&nbsp;plugin&nbsp;registration,&nbsp;it&nbsp;actually&nbsp;calls&nbsp;</span><span class="src-doc-inlinetag">{@link&nbsp;Psa_Plugin::register()}</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;and&nbsp;</span><span class="src-doc-inlinetag">{@link&nbsp;Psa_Plugin::save()}</span><span class="src-doc">&nbsp;methods.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;See&nbsp;their&nbsp;documentation&nbsp;for&nbsp;details&nbsp;about&nbsp;the&nbsp;plugin&nbsp;registration&nbsp;process.</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;When&nbsp;you&nbsp;add&nbsp;some&nbsp;new&nbsp;plugins&nbsp;(new&nbsp;classes&nbsp;that&nbsp;extends&nbsp;&lt;i&gt;Psa_Plugin_&lt;/i&gt;&nbsp;classes,</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;not&nbsp;methods&nbsp;inside&nbsp;already&nbsp;registered&nbsp;classes)&nbsp;you&nbsp;must&nbsp;register&nbsp;plugins&nbsp;to&nbsp;save&nbsp;data</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;like&nbsp;path&nbsp;and&nbsp;type&nbsp;into&nbsp;the&nbsp;database.&nbsp;After&nbsp;that&nbsp;you&nbsp;can&nbsp;call&nbsp;plugin&nbsp;methods&nbsp;with</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-inlinetag">{@link&nbsp;psa_run_plugins()}</span><span class="src-doc">&nbsp;function.</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;This&nbsp;script&nbsp;should&nbsp;be&nbsp;called&nbsp;directly&nbsp;in&nbsp;web&nbsp;browser&nbsp;by&nbsp;typing&nbsp;url&nbsp;like:</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;&lt;kbd&gt;http://my_site.com/psa/register_plugins.php&lt;/kbd&gt;.&nbsp;You&nbsp;don't&nbsp;have&nbsp;to&nbsp;use&nbsp;this</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;script&nbsp;for&nbsp;plugin&nbsp;registration.&nbsp;It&nbsp;is&nbsp;here&nbsp;for&nbsp;your&nbsp;convenience,&nbsp;but&nbsp;you&nbsp;can&nbsp;do&nbsp;it&nbsp;in&nbsp;some</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;of&nbsp;your&nbsp;model&nbsp;plugins&nbsp;if&nbsp;you&nbsp;like,&nbsp;by&nbsp;calling&nbsp;these&nbsp;two&nbsp;methods:</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;&lt;code&gt;</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;//&nbsp;register&nbsp;plugins</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;$plugins_data&nbsp;=&nbsp;Psa_Plugin::get_instance()-&gt;register();</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*&nbsp;</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;*&nbsp;//&nbsp;save&nbsp;registered&nbsp;data</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;*&nbsp;Psa_Plugin::get_instance()-&gt;save($plugins_data);</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;*&nbsp;&lt;/code&gt;</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;*&nbsp;</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;*&nbsp;If&nbsp;</span><span class="src-doc-inlinetag">{@tutorial&nbsp;psa_features.pkg#developmode&nbsp;develop&nbsp;mode}</span><span class="src-doc">&nbsp;is&nbsp;on,&nbsp;registration&nbsp;is&nbsp;done&nbsp;on&nbsp;every</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;*&nbsp;request&nbsp;so&nbsp;you&nbsp;don't&nbsp;need&nbsp;to&nbsp;call&nbsp;this&nbsp;script.&nbsp;This&nbsp;script&nbsp;can&nbsp;be&nbsp;useful&nbsp;on&nbsp;production</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;*&nbsp;site&nbsp;when&nbsp;you&nbsp;add&nbsp;some&nbsp;new&nbsp;plugin&nbsp;class.</span></div></li>
<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;*&nbsp;</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;*&nbsp;&lt;b&gt;Note:&lt;/b&gt;&nbsp;Do&nbsp;not&nbsp;allow&nbsp;everyone&nbsp;to&nbsp;call&nbsp;this&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;http://code.google.com/p/phpstartapp/</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Bojan&nbsp;Mauser&nbsp;&lt;bmauser@gmail.com&gt;</span></div></li>
<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;Bojan&nbsp;Mauser&nbsp;2009</span></div></li>
<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;psa</span></div></li>
<li><div class="src-line"><a name="a34"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;Psa_Plugin::register()</span></div></li>
<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;Psa_Plugin::save()</span></div></li>
<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;psa_run_plugins()</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;$Id:&nbsp;register_plugins.php&nbsp;464&nbsp;2009-03-24&nbsp;00:30:12Z&nbsp;bmauser&nbsp;$</span></div></li>
<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@todo</span><span class="src-doc">&nbsp;Put&nbsp;some&nbsp;security&nbsp;into&nbsp;this&nbsp;script&nbsp;or&nbsp;remove&nbsp;it&nbsp;from&nbsp;psa&nbsp;folder.</span></div></li>
<li><div class="src-line"><a name="a39"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a46"></a><span class="src-comm">//&nbsp;PSA&nbsp;main&nbsp;dir</span></div></li>
<li><div class="src-line"><a name="a47"></a><span class="src-var">$PSA_CFG</span><span class="src-sym">[</span><span class="src-str">'folders'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'basedir'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/dirname">dirname</a><span class="src-sym">(</span>__FILE__<span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-comm">//&nbsp;include&nbsp;required&nbsp;files</span></div></li>
<li><div class="src-line"><a name="a51"></a><span class="src-inc">include_once&nbsp;</span><span class="src-str">'config.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a52"></a><span class="src-inc">include_once&nbsp;</span><span class="src-str">'scripts/Psa_Pdo.class.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a53"></a><span class="src-inc">include_once&nbsp;</span><span class="src-str">'scripts/Psa_Singleton.class.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a54"></a><span class="src-inc">include_once&nbsp;</span><span class="src-str">'scripts/Psa_Logger.class.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a55"></a><span class="src-inc">include_once&nbsp;</span><span class="src-str">'scripts/Psa_Plugin.class.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a><span class="src-inc">include_once&nbsp;</span><span class="src-str">'scripts/functions.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a59"></a><span class="src-comm">//&nbsp;database&nbsp;object</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-var">$psa_database&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id"><a href="../psa/Psa_Pdo.html">Psa_Pdo</a></span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-comm">//&nbsp;register&nbsp;plugins</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-var">$plugins_data&nbsp;</span>=&nbsp;<span class="src-id"><a href="../psa/Psa_Plugin.html">Psa_Plugin</a></span><span class="src-sym">::</span><a href="../psa/Psa_Plugin.html#methodget_instance">get_instance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">register</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a65"></a><span class="src-comm">//&nbsp;echo&nbsp;results</span></div></li>
<li><div class="src-line"><a name="a66"></a>echo&nbsp;<span class="src-str">&quot;Plugins&nbsp;data:&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a><span class="src-id">prs</span><span class="src-sym">(</span><span class="src-var">$plugins_data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a69"></a><span class="src-comm">//&nbsp;save&nbsp;to&nbsp;database</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-key">if</span><span class="src-sym">(</span><span class="src-id"><a href="../psa/Psa_Plugin.html">Psa_Plugin</a></span><span class="src-sym">::</span><a href="../psa/Psa_Plugin.html#methodget_instance">get_instance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">save</span><span class="src-sym">(</span><span class="src-var">$plugins_data</span><span class="src-sym">))</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-str">&quot;Plugins&nbsp;data&nbsp;saved&nbsp;to&nbsp;database&nbsp;(registered).&nbsp;OK.&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a><span class="src-key">else</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-str">&quot;Error.&nbsp;Data&nbsp;not&nbsp;saved&nbsp;to&nbsp;database.&quot;</span><span class="src-sym">;</span></div></li>
</ol></div>
</div>
	<p class="notes" id="credit">
		Documentation generated on Thu, 21 Oct 2010 01:40:58 +0200 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
	</p>
	</body>
</html>